|
CallGraph
|
00001 00002 /*************************************************************** 00003 * Name: callgraph.h 00004 * Purpose: Header to create plugin 00005 * Author: Vaclav Sprucek 00006 * Created: 2012-03-04 00007 * Copyright: Vaclav Sprucek 00008 * License: wxWidgets license (www.wxwidgets.org) 00009 * Notes: 00010 **************************************************************/ 00011 00012 #ifndef __CallGraph__ 00013 #define __CallGraph__ 00014 00015 #include "plugin.h" 00016 // 00017 #include <wx/wx.h> 00018 #include <wx/process.h> 00019 #include <wx/stream.h> 00020 #include "confcallgraph.h" 00021 #include "gprofparser.h" 00022 #include "dotwriter.h" 00023 #include "static.h" 00024 00025 00030 class CallGraph : public IPlugin 00031 { 00032 public: 00037 CallGraph(IManager *manager); 00041 ~CallGraph(); 00042 //-------------------------------------------- 00043 //Abstract methods 00044 //-------------------------------------------- 00050 virtual clToolBar *CreateToolBar(wxWindow *parent); 00055 virtual void CreatePluginMenu(wxMenu *pluginsMenu); 00056 00062 virtual void HookPopupMenu(wxMenu *menu, MenuType type); 00063 /*virtual void UnHookPopupMenu(wxMenu *menu, MenuType type);*/ 00067 virtual void UnPlug(); 00068 00069 protected: 00074 void OnAbout(wxCommandEvent &event); 00079 void OnShowCallGraph(wxCommandEvent &event); 00084 void OnSettings(wxCommandEvent &event); 00089 wxString GetGprofPath(); 00094 wxString GetDotPath(); 00095 00100 wxMenu* CreateProjectPopMenu(); 00104 wxScrolledWindow *cgWnd; // pointer cgWnd type wxScrolledWindow used in tab page for display call graph picture 00108 wxInputStream *m_pInputStream; // pointer m_pInputStream type wxInputStream returned from gprof application 00112 ConfCallGraph confData; // object confData type ConfCallGraph with stored configuration data 00113 00114 }; 00115 #endif //CallGraph 00116